/*
 * Copyright 2011-2012 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.sabayframework.mem.impl.net;

import org.sabayframework.mem.Transaction;
import org.sabayframework.mem.Transaction.Locking;
import org.sabayframework.mem.impl.AbstractSpace;
import org.sabayframework.queue.ExecutionQueue;

/**
 * TODO Network space is a distributed implementation of Space.   
 * */
public class NetSpace extends AbstractSpace {


	public NetSpace(ExecutionQueue executionQueue) {
		super(executionQueue);
	}
	@Override
	public Transaction beginTransaction(Locking locking) {
		// TODO Auto-generated method stub
		return null;
	}
	/**
	 * Minimal number of replicas that should be updated on transaction commit.
	 * Multiple replicas are needed for data durability.  
	 * */
	int getMinReplicaNumber(){return 0;}
	/**
	 * Maximal number of replicas that should be maintained in the storage.
	 * Multiple read replicas are needed for low latency during data access.  
	 * */
	int getMaxReplicaNumber(){return 0;}
	/**
	 * Total number of computers currently used for storage.
	 * */
	int getComputerNumber(){return 0;}
	/**
	 * Current number of data partitions.
	 * */
	int getPartitionNumber(){return 0;}

}
